//发布订阅
class PubSub{
    constructor(){
        this.list=[]
    } 
    //订阅回调函数
    subscribe(callback){
        if(callback){
            this.list.push(callback)
        }
    }
  //发布消息，触发所有回调
    publish(msg){
        this.list.forEach(item=>item(msg))
    }
}

const pb = new PubSub() //创建实例
//订阅函数
pb.subscribe(textA)
pb.subscribe(textB)
// 发布消息
pb.publish('更新了')
//定义回调函数
function textA(msg){
    console.log('textA',msg)
}

function textB(msg){
    console.log('textB',msg)
}
//textA()无返回值，输出undefined
console.log(textA(),textA)

PubSub.subscribe(textA)
PubSub.subscribe(textB)
PubSub.subscribe('发布消息')